package com.ruoyi.whole.service;

import java.util.List;

import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.whole.domain.InfoBulkAddVo;
import com.ruoyi.whole.domain.InfoWholeEvaluate;
import com.ruoyi.whole.domain.InfoWholeSummarizingVo;
import com.ruoyi.whole.domain.InfoWholeTarget;

/**
 * 目标管理-部门整体信息Service接口
 *
 * @author ruoyi
 * @date 2022-02-10
 */
public interface IInfoWholeTargetService
{
    /**
     * 查询目标管理-部门整体信息
     *
     * @param id 目标管理-部门整体信息主键
     * @return 目标管理-部门整体信息
     */
    public InfoWholeTarget selectInfoWholeTargetById(Long id);

    /**
     * 查询目标管理-部门整体信息列表
     *
     * @param infoWholeTarget 目标管理-部门整体信息
     * @return 目标管理-部门整体信息集合
     */
    public List<InfoWholeTarget> selectInfoWholeTargetList(InfoWholeTarget infoWholeTarget);

    /**
     * 新增目标管理-部门整体信息
     *
     * @param infoWholeTarget 目标管理-部门整体信息
     * @return 结果
     */
    public int insertInfoWholeTarget(InfoWholeTarget infoWholeTarget);

    /**
     * 修改目标管理-部门整体信息
     *
     * @param infoWholeTarget 目标管理-部门整体信息
     * @return 结果
     */
    public int updateInfoWholeTarget(InfoWholeTarget infoWholeTarget);

    /**
     * 批量删除目标管理-部门整体信息
     *
     * @param ids 需要删除的目标管理-部门整体信息主键集合
     * @return 结果
     */
    public int deleteInfoWholeTargetByIds(Long[] ids);

    /**
     * 删除目标管理-部门整体信息信息
     *
     * @param id 目标管理-部门整体信息主键
     * @return 结果
     */
    public int deleteInfoWholeTargetById(Long id);

    /**
     * 查询部门项目支出绩效自评情况汇总表
     * @return
     */
    public List<InfoWholeSummarizingVo> selectInfoWholeSummarizingVoList(String industryTitle);

    //查询审核
    List<InfoWholeTarget> auditInfoWholeTargetList(InfoWholeTarget infoWholeTarget);



    int batchInsert(InfoBulkAddVo infoBulkAddVos);

    SysDept selectDeptById(Long deptId);


    List<InfoWholeTarget> selectProjectByDeptId(Long deptId);

    InfoWholeTarget selectInfoWholeTargetsById(Long wholeId);

    List<InfoWholeTarget> selectInfoWholeTargetLists(InfoWholeTarget infoWholeTarget);
}
